"""
Python的数据结构

序列：一块可以存放多个值的连续空间
列表：[]           可变             有序             可重复
元组：()           不可变           有序             可重复
字典：{key:value}  可变             无序             可重复[value是可以重复的；key是不能重复的，列表不能作为字典的key]
集合：{}           可变             无序             不可重复
字符串：""或''      不可变           有序             可重复
索引：通过这种方式可以访问到序列单个元素的值
序列名[索引值]
为正数时，开始索引是从0开始，从左向右进行依次递增，直到序列中最后一个元素的位置结束
为负数时，开始索引是从-1开始，从右向左进行依次递减，直到序列中一个元素的位置结束
切片：通过这种方式可以访问到多个元素的值
序列名[起始索引:结束索引:步长]
起始索引：开始的索引值，可以省略不写，默认值为第一个元素的位置或最后一个元素的位置开始，包含该位置
结束索引：结束的索引值，可以省略不写，默认值为最后一个元素的位置结束或第一个元素的位置结束，不包含该位置
步长：自增的量。可以省略不写，默认为1.
为正数时，取值范围是从左向右进行取值；
为负数时，取值范围是从右向左进行取值。
如果步长省略不写的话，最后一个冒号可以省略不写；
如果起始索引和结束索引省略不写的话，它们中间的冒号就必须保留。




"""
# li = [1,2,3,4,5,6,7,8,9,10]
# # del li
# print(li,type(li))
# # print(li[-3])
# print(li[4::-1])

# num_list = [11,22,33,44,55,66,77,88,99]
# print(num_list[2:5])
# print(num_list[-1:-5:-2])
# print(num_list[2:7:2])
# print(num_list[::-1])
# print(num_list[-2::-2])
# print(num_list[:6:])
# print(num_list[:6:-1])
# print(num_list[2::-1])
# print(num_list[4:1:1])
# print(num_list[100:200:1])

li = [1,2,3,4,5,6,7,8,9,10,1]
# li.append(11)
# li.insert(2,11)
# li.extend([11,12,13])
# li.remove(50)
# del li[2]
# li.pop(2)
# li[5] = 66
# li.clear()
# li.reverse()
# li.sort(reverse=True)
# print(li.count(1))
# print(li.index(1))
# print(li*3)

# for i in li:
#     print(i)

# for i in range(len(li)):
#     print(li[i])

# num = (1,2,3,4,5,6,7,8,9,10)
# # del num
# n = list(num)
# n1 = tuple(n)
# print(num,type(num))
# print(n,type(n))
# print(n1,type(n1))

info = {
    "name":"张三",
    "age":18,
    "sex":"男",
    "hobby":["看电影","看小说","看游戏"]
}
# info["name"] = "王五"
# info["name1"] = "王五"
# info.update({"name":"王五","手机号":"12345678901"})
# print(info.pop('name1', '键不存在'))
# del info["name"]
# print(info,type(info))
# print(info["name"])
# print(info.get("age"))

# for i in info.items():
#     print(i)
# for i in info.keys():
#     print(i)
# for i in info.values():
#     print(i)

# num = {1,2,3,4,5,6,7,8,9,10}
# # del  num
# # n = set()
# # num.add(11)
# # num.update([11,12,13])
# num.remove(30)
# num.discard(20)
# print(num,type(num))
# print(n,type(n))

# # # 创建两个集合
# set1 = {1,2,3,5,6}
# set2 = {2,4,6,8}
# # 交集
# print("交集:",set1&set2)
# # 并集
# print("并集:",set1|set2)
# # 差集 set1-set2
# print("差集set1-set2:",set1-set2)
# # 差集 set2-set1
# print("差集set2-set1:",set2-set1)
# # 对称差集
# print("对称差集:",set1^set2)

# str1 = """
# hello world
# """
# print(str1,type(str1))

# str1 = 'he-l-lo wo-rld'
#
# print(str1.split('-',2))

# str1 = "hello"
# str2 = "python"
# print(','.join([str1,str2]))

str1 = "姓名:{},年龄:{},性别:{}"
str2 = "姓名:{0},年龄:{1},性别:{2}"
str3 = "姓名:{name},年龄:{age},性别:{sex}"
str4 = "身高:{:.2f},体重:{:.1f}"
# 系统默认参数
print(str1.format("张飞",25,"男"))
# 位置参数
print(str2.format("孙二娘",30,"女"))
# 关键字参数
print(str3.format(name = "关羽",age = 30,sex = "男"))
# 对小数的处理
print(str4.format(1.789,65.69))


print('{:.2%}'.format(0.987654321))
